package com.lingchou.cloud.process.api.dto.param.base;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

@Getter
@Setter
@ToString
@Builder
@ApiModel(value = "ProcessStartParamVo", description = "流程启动参数类")
public class ProcessStartParamVo {

    /**
     * 流程发布ID
     */
    @ApiModelProperty(value = "流程发布ID")
    @NotBlank(message = "流程定义不能为空")
    private String deploymentId;

    /**
     * 业务Key
     */
    @ApiModelProperty(value = "业务Key",notes = "可以做业务外键关联用")
    private String businessKey;

    /**
     * 节点启动参数
     */
    @ApiModelProperty(value = "节点启动参数")
    @NotNull(message = "启动参数必传")
    @Valid
    private List<NodeStartParam> nodeStartParams;
}
